import cv2


'''
第一周作业
问题描述
（本周共计3个一个扩展作业）
1. 在计算机上安装OpenCV 3.0以上版本，为后续作业准备。开发语言可采用C++或Python。
2. 创建第一个视觉程序“Hello，world！”，显示Lena图片。具体效果参看课程PPT。
3. 对Lena图像，分解得到RGB分量及HSV分量，显示各分量，并对结果进行比较说明。
解题提示
1. 参考CSDN相关文章。
2. 参考PPT中对应函数说明。
作业格式要求
1. 提交jupyter notebook生成的可执行文件（.ipynb文件）或者pycharm生成的包含源码的.py文
件，所有题目完成在同一个文件内即可。
2. 在可执行文件内，要求按照题目一加代码，题目二加代码……的格式来书写，对结果进行比较说明
3.对Lena图像，分解得到RGB分量及HSV分量，显示各分量，并对结果进行比较说明。
用注释的形式写出来即可。
注：用c++编写的同学需提交.sln、.cpp和.h文件； 如果对结果比较说明需要截图，和文字说明一
起整理成一份markdown格式的文档，或输出为pdf格式，并提交。
批改标准
1. 第1题无分数，需根据2、3题完成情况评价。
2. 第2题40分，在窗口中正确输出Lena彩色图像得分。
3. 第3题60分，在窗口中正确显示RGB分量得20分，正确显示HSV分量得20分，结果分析比较说明合理得20分。
'''

#创建第一个视觉程序“Hello，world！”，显示Lena图片。
#读取lena图像
img = cv2.imread("lena.jpg")
#以hello world头显示lena图片
cv2.imshow('Hello,world!',img)
#图片等待不关闭
#cv2.waitKey()
#关闭所有打开的HighGUI窗口
#cv2.destroyAllWindows()

#对Lena图像，分解得到RGB分量及HSV分量，显示各分量，并对结果进行比较说明。
#分解hsv
hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
#Hue 色调分量
cv2.imshow("Hue",hsv[:,:,0])
#Saturation 饱和度分量
cv2.imshow("Saturation",hsv[:,:,1])
#Value 亮度分量
cv2.imshow("Value",hsv[:,:,2])
#图片等待不关闭
#cv2.waitKey()

#Blue 蓝色分量
cv2.imshow("Blue",img[:,:,0])
#Green 绿色分量
cv2.imshow("Green", img[:,:,1])
#Red 红色分量
cv2.imshow("Red",img[:,:,2])
#图片等待不关闭
cv2.waitKey()
#关闭所有打开的HighGUI窗口
cv2.destroyAllWindows()

#对比结果在lena_副本图片中